package com.hcy.business.service;

import com.hcy.rabbitbasicmodel.dto.MyPage;
import com.hcy.usermodel.dto.request.*;
import com.hcy.usermodel.dto.response.*;

import java.util.List;

/**
 * @Author huchenying
 * Description:
 * @Date 2021/11/20 13:46
 */
public interface UserServiceBz {
    UserAuthsResponseDTO getAuthsByName(UserAuthRequestDTO requestDto);

    void addTestUser(UserAuthRequestDTO user);

//    void consumerPay(String data);

    CustomerInfoResponseDTO changeCoin(String phone,Double change);

    void evaluation(EvaluationRequestDTO requestDTO);

    CustomerInfoResponseDTO getBaseInfo(String phone);

    List<RoutesResponseDTO> getRoutesList();

    void addRoutes(UploadRoutesRequestDTO requestDTO);

    MyPage<UserAuthsResponseDTO> getUserList(UserAuthRequestDTO requestDTO);

    UserAuthsResponseDTO insertOrUpdateManager(UserAuthRequestDTO requestDTO);

    List<RoleResponseDTO> getRoleList(UserAuthRequestDTO requestDTO);

    RoleResponseDTO addRole(RoleResponseDTO requestDTO);

    void deleteUser(UserAuthRequestDTO requestDTO);

    void deleteRole(RoleResponseDTO requestDTO);

    void updateUserRole(RoleUpdateRequestDTO requestDTO);

    void addOptLog(AddLogRequestDTO requestDTO);

    MenuResponseDTO getMenuTree();

    MenuResponseDTO addMenu(MenuRequestDTO requestDTO);

    void deleteMenu(MenuRequestDTO requestDTO);

    ManagerPermissionResponseDTO getUserRoleMenu(UserAuthRequestDTO requestDto);

    void updateRoleMenu(MenuRequestDTO requestDTO);

    MyPage<UserAuthsResponseDTO> getCustomerList(UserAuthRequestDTO requestDTO);
}
